In general, peer-to-peer computing refers to direct sharing of computer resources and services between systems. Direct exchanges of data, processing power and storage can enhance computing power and networking connectivity. Clients and servers can interchange their roles and leverage collective processing and storage power across a group of computers depending on which role is most efficient for the network. As a result, servers and clients can apportion roles and reduce the need for additional storage and the like.
Some types of peer-to-peer infrastructures follow a graphing protocol. A graph is a collection of interconnected peer nodes. A group is an implementation of a graph that also provides security in a graph, and allows sharing of the same graph by multiple applications on the same machine. Peer nodes join a graph to exchange information in the form of records. A basic graphing protocol provides for no control over connectivity among peers and the information published in the graph. The information published can be spoofed or tampered. There is also no control over who can connect to the graph. Malicious users can easily eavesdrop and listen to information exchanged between peers in the graph. Therefore, there is a need for security in peer to peer networks that prevent malicious users, spoofing, tampering and generally provides control over a secure group.